package com.rayc.mall.pay.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.rayc.mall.api.dto.PayOrderFormDTO;
import com.rayc.mall.pay.domain.po.PayOrder;
import com.rayc.mall.pay.domain.query.PayOrderPageQuery;
import com.rayc.mall.pay.domain.vo.PayOrderVO;

import java.util.List;

/**
 * @Author: Ray-C
 * @CreateTime: 2025-03-26
 * @Description: 支付订单service接口
 * @Version: 1.0
 */
public interface IPayOrderService extends IService<PayOrder> {

    PayOrder createPayOrder(Long orderId);

    void tryPayOrderByBalance(PayOrderFormDTO payOrderFormDTO);

    void cancelPayOrder(Long id);

    Page<PayOrder> search(PayOrderPageQuery query);

    List<PayOrderVO> queryMyPayOrders();
}
